import Vue from 'vue'
import VueRouter from 'vue-router'
import login from '@/components/login.vue'
import Home from '../components/Home.vue'
import Welcome from '../components/Welcome.vue'
import Users from '../components/user/Users.vue'
import Rights from '../components/power/Rigthts.vue'
import Roles from '../components/power/Roles.vue'
import Cate from '../components/goods/Cate.vue'
import Params from '../components/goods/Params.vue'
import List from '../components/goods/List'
import AddGoods from '../components/goods/Add'
import EditGoods from '../components/goods/EditGoods'
import Order from '../components/order/Order.vue'
import Report  from '../components/report/Report.vue'
Vue.use(VueRouter)


const routes = [{
		path: '/',
		component: () => import('../components/login.vue')
	},
	{
		path: '/login',
		name: 'login',
		component: () => import('../components/login.vue')
	},
	{
		path: '/home',
		name: 'home',
		component: Home,
		redirect: '/Welcome',
		children: [{
				path: '/Welcome',
				component: Welcome
			},
			{
				path: '/users',
				component: Users
			},
			{
				path: '/rights',
				component: Rights
			},
			{
				path: '/roles',
				component: Roles
			},
			{
				path: '/categories',
				component: Cate
			}, {
				path: '/params',
				component: Params
			},
			{
				path: '/goods',

				component: List
			},
			{
				path: '/goods/add',

				component: AddGoods
			},
			{
				path: '/goods/edit/:goodsId',

				component: EditGoods,
				props: true
			}, 
			{
				path: '/orders',
			
				component: Order
			},
			{
				path: '/reports',
			
				component: Report
			},
		]
	},
]
const router = new VueRouter({
	routes
})

// 挂载路由导航守卫
router.beforeEach((to, from, next) => {
	// to 将要访问的路径
	// from 代表从哪个路径跳转而来
	// next 是一个函数，表示放行
	//     next()  放行    next('/login')  强制跳转

	if (to.path === '/login') return next()
	// 获取token
	const tokenStr = window.sessionStorage.getItem('token')
	if (!tokenStr) return next('/login')
	next()
})
export default router
